Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Алгоритми для виконання операцій з довгими числами

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Алгоритмічні основи криптології

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ, МОЛОДІ ТА СПОРТУ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА З В І Т до лабораторної роботи №1 з курсу: «Алгоритмічні основи криптології» на тему: «Алгоритми для виконання операцій з довгими числами» Варіант № 9 Львів – 2013р. Мета роботи - вивчити способи представлення та алгоритми для виконання операцій введення-виведення, порівняння, підсумовування, віднімання довгих чисел та навчитися розробляти програмне забезпечення для реалізації перерахованих алгоритмів на комп’ютері. Завдання Скласти блок-схеми алгоритмів, підпрограми та програму для реалізації адитивних операцій та операцій порівняння для роботи з довгими числами. Дані для лабораторні наведені в таблиці. Варіант Варіант представлення числа Заповнення невикористаних розрядів Операції х довгими числами  9 1 -1 Додавання, більше або рівно  Блок-схема алгоритму програми  Блок-схема алгоритму введення довгого числа.  Блок-схеми алгоритмів порівняння довгих чисел.  Алгоритм виведення довгого числа.  Блок-схема алгоритму додавання довгих чисел. Список ідентифікаторів констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення a, b, c, d – одновимірні масиви типу integer. s – змінна типу string, що використовується для зчитування довгих чисел з файлів; Vvedennia_Chysla – метод який не має аргументів, забезпечує зчитування довгих чисел з файлів; Vyvedennia_Chysla(int[] d, string st)– метод який реалізовує виведення довгого числа d, а також він виводить на екран значення змінної st; Rivnist(int[] q1, int[] q2)- метод, який перевіряє рівність двох довгих чисел q1 s q2, даний метод повертає значення типу boolean(true або false); Bilshe(int[] q1, int[] q2) - метод, що перевіряє чи число q1 є більшим за q2, повертає значення типу bool; Dodavannia(int[] q1, int[] q2) - метод, що здійснює додавання двох довгих чисел q1 і q2. Текст програми using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Dobge_Chyslo t = new Dobge_Chyslo(); Console.ReadLine(); } } class Dobge_Chyslo { string s; int[] a, b, c, d; int i, j, n, g, osn, k, temp, f; public Dobge_Chyslo() { k = 4; osn = 10000; Zchytuvannia_a_b(); Dodavannia(a, b); Vyvedennia_Chysla(d, "a+b="); if (Bilshe(a, b) || Rivnist(a, b)) Console.WriteLine("a>=b true"); else Console.WriteLine("a>=b false"); } void Vvedennia_Chysla() { FileStream stream = new FileStream(s + ".txt", FileMode.Open); StreamReader reader = new StreamReader(stream); s = reader.ReadToEnd(); stream.Close(); n = s.Length / k; g = s.Length % k; if (g != 0) n++; c = new int[n + 1]; c[0] = n; s.ToCharArray(); for (i = s.Length - 1; i >= g; i -= k) { for (j = 0, temp = 0; j < k; j++) temp += (Convert.ToInt32(s[i - j]) - 48) * Convert.ToInt32(Math.Pow(10, j)); c[n] = temp; n--; } if (g != 0) { for (j = 0, temp = 0; j < g; j++) temp += (Convert.ToInt32(s[g - j - 1]) - 48) * Convert.ToInt32(Math.Pow(10, j)); c[n] = temp; } } void Zchytuvannia_a_b() { s = "a"; Vvedennia_Chysla(); a = new int[c[0] + 1]; for (i = 0; i < c[0] + 1; a[i] = c[i], i++) ; s = "b"; Vvedennia_Chysla(); b = new int[c[0] + 1]; for (i = 0; i < c[0] + 1; b[i] = c[i], i++) ; Vyvedennia_Chysla(a, "a="); ...
Антиботан аватар за замовчуванням

31.05.2014 14:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини